100
How can I show the item in italics

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item',Null,Null).Italic := True;
		Add('<i>Item</i>',Null,Null);
		Add('',Null,Null).ToString := 'Item[itl]';
	end;
	Select(Null,Null,Null);
end
99
How can I show the item in bold

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item',Null,Null).Bold := True;
		Add('<b>Item</b>',Null,Null);
		Add('',Null,Null).ToString := 'Item[bld]';
	end;
	Select(Null,Null,Null);
end
98
How can I show the item as disabled but still be able to select or use it

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item',Null,Null).ShowAsDisabled := True;
		Add('',Null,Null).ToString := 'Item[showdis=1]';
	end;
	Select(Null,Null,Null);
end
97
How can I enable or disable an item

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item',Null,Null).Enabled := False;
		Add('',Null,Null).ToString := 'Item[dis]';
	end;
	Select(Null,Null,Null);
end
96
How can I add a separator item

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item',Null,Null).CaptionWidth := 128;
		Add('<font ;6>separator',OleVariant(1),Null);
		Add('Item',Null,Null).CaptionWidth := 128;
		Add('',Null,Null).ToString := '<font ;6>separator[sep]';
	end;
	Select(Null,Null,Null);
end
95
How can I change the item's foreground color

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item',Null,Null).ForeColor := $ff;
		Add('<fgcolor FF0000>Item',Null,Null);
		Add('',Null,Null).ToString := 'Item[fg=RGB(255,0,0)]';
	end;
	Select(Null,Null,Null);
end
94
How can I change the item's background/backcolor, when the item is selected/checked (radio-buttons)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('Radio 1',Null,Null) do
				begin
					HotBackColor := $ffffff;
					SelBackColor := $ff;
					SelHotBackColor := $ff;
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
					Radio := True;
					RadioGroup := 100;
					Checked := True;
				end;
				with Add('Radio 2',Null,Null) do
				begin
					HotBackColor := $ffffff;
					SelBackColor := $ff;
					SelHotBackColor := $ff;
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
					Radio := True;
					RadioGroup := 100;
				end;
				Add('',Null,Null).ToString := 'Radio 3[typ=2][show=1][grp=100][bghot=RGB(255,255,255)][bgsel=RGB(255,0,0)][bgselhot=RGB(255,0,0)]';
			end;
		end;
	end;
	Select(Null,Null,Null);
end
93
How can I change the item's background/backcolor, when the item is selected/checked (check-box)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Check 1',Null,Null) do
		begin
			HotBackColor := $ffffff;
			SelBackColor := $ff;
			SelHotBackColor := $ff;
			ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
			Checked := True;
			Check := True;
		end;
		Add('',Null,Null).ToString := 'Check 2[typ=1][chk=0][show=1][bghot=RGB(255,255,255)][bgsel=RGB(255,0,0)][bgselhot=RGB(255,0,0)]';
	end;
	Select(Null,Null,Null);
end
92
How can I prevent showing the border for selected/highlight/hot items

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Background[EXCONTEXTMENULib_TLB.exMenuSelBorderColor] := $ffffff;
	with Items do
	begin
		Add('Item',Null,Null);
		Add('Item',Null,Null);
	end;
	Select(Null,Null,Null);
end
91
How can I change the item's background/backcolor, when the cursor hovers it (hot)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item',Null,Null).HotBackColor := $ff;
		Add('',Null,Null).ToString := 'Item[bghot=RGB(255,0,0)]';
	end;
	Select(Null,Null,Null);
end
90
How can I change the item's background/backcolor

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
	with Items do
	begin
		Add('Item',Null,Null).BackColor := $ff;
		Add('Item',Null,Null).BackColor := $1000000;
		Add('',Null,Null).ToString := 'Item[bg=RGB(255,0,0)]';
	end;
	Select(Null,Null,Null);
end
89
How can I specify/assign the item's identifier

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Debug := True;
	with Items do
	begin
		Add('ID 1',OleVariant(0),OleVariant(1000));
		Add('ID 2',Null,Null).ID := 1001;
		Add('',Null,Null).ToString := 'ID 3[id=1002]';
	end;
	Select(Null,Null,Null);
end
88
How can I show a horizontal separator/line between groups (method 3,EBN color)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exGroupPopupVertical) Or Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('',Null,Null) do
				begin
					AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := -128;
					EditValue := OleVariant(25);
				end;
				with Add('',Null,Null) do
				begin
					Enabled := False;
					BackColor := $1000000;
					ItemHeight := 8;
					CaptionWidth := 128;
				end;
				with Add('',Null,Null) do
				begin
					AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := -128;
					EditValue := OleVariant(25);
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
87
How can I show a horizontal separator/line between groups (method 2,solid color)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exGroupPopupVertical) Or Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('',Null,Null) do
				begin
					AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := -128;
					EditValue := OleVariant(25);
				end;
				with Add('',Null,Null) do
				begin
					Enabled := False;
					BackColor := $808080;
					ItemHeight := 8;
					CaptionWidth := 128;
				end;
				with Add('',Null,Null) do
				begin
					AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := -128;
					EditValue := OleVariant(25);
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
86
How can I show a horizontal separator/line between groups (method 1,pattern)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exGroupPopupVertical) Or Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('',Null,Null) do
				begin
					AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := -128;
					EditValue := OleVariant(25);
				end;
				with Add('',OleVariant(2),Null) do
				begin
					GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
					with Items do
					begin
						with Add('',Null,Null) do
						begin
							Enabled := False;
							ItemHeight := 8;
							CaptionWidth := 128;
						end;
						BackgroundExt := 'none[(0,50%-1,100%,2),pattern=0x006,patterncolor=RGB(128,128,128)]';
					end;
				end;
				with Add('',Null,Null) do
				begin
					AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := -128;
					EditValue := OleVariant(25);
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
85
How can I show a vertical separator/line between groups (method 3,EBN color)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('',Null,Null) do
				begin
					ItemHeight := 128;
					AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditVertical) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := 32;
					EditValue := OleVariant(25);
				end;
				with Add('',Null,Null) do
				begin
					Enabled := False;
					BackColor := $1000000;
					ItemHeight := 96;
					CaptionWidth := 8;
				end;
				with Add('',Null,Null) do
				begin
					ItemHeight := 128;
					AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditVertical) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := 32;
					EditValue := OleVariant(25);
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
84
How can I show a vertical separator/line between groups (method 2,solid color)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('',Null,Null) do
				begin
					ItemHeight := 128;
					AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditVertical) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := 32;
					EditValue := OleVariant(25);
				end;
				with Add('',Null,Null) do
				begin
					Enabled := False;
					BackColor := $808080;
					ItemHeight := 96;
					CaptionWidth := 8;
				end;
				with Add('',Null,Null) do
				begin
					ItemHeight := 128;
					AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditVertical) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := 32;
					EditValue := OleVariant(25);
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
83
How can I show a vertical separator/line between groups (method 1,pattern)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('',Null,Null) do
				begin
					ItemHeight := 128;
					AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditVertical) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := 32;
					EditValue := OleVariant(25);
				end;
				with Add('',OleVariant(2),Null) do
				begin
					GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
					with Items do
					begin
						with Add('',Null,Null) do
						begin
							Enabled := False;
							ItemHeight := 96;
							CaptionWidth := 8;
						end;
						BackgroundExt := 'none[(50%-1,0,2,100%),pattern=6,patterncolor=RGB(128,128,128)]';
					end;
				end;
				with Add('',Null,Null) do
				begin
					ItemHeight := 128;
					AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditVertical) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
					EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
					EditWidth := 32;
					EditValue := OleVariant(25);
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
82
How can I show a pattern on the items

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				Add('Item 1',Null,Null);
				Add('Item 2',Null,Null);
				Add('Item 3',Null,Null);
			end;
		end;
		BackColor := $ffffff;
		Padding := '2,2,2,12';
		BackgroundExt := 'root[pattern=0x006,patterncolor=RGB(128,128,128),frame=RGB(128,128,128)](bottom[2],bottom[12,text=`<font ;6><fgcolor 808080><off' + 
	' -2> clipboard </off></font></fgcolor>`,align=0x21])';
	end;
	Select(Null,Null,Null);
end
81
How can I show a thick frame arround the items

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				Add('Item 1',Null,Null);
				Add('Item 2',Null,Null);
				Add('Item 3',Null,Null);
			end;
		end;
		BackColor := $ffffff;
		Padding := '2,2,2,12';
		BackgroundExt := 'root[frame=RGB(128,128,128)](bottom[2],bottom[12,text=`<font ;6><fgcolor 808080><off -2> clipboard </off></font></fgcolor>`,alig' + 
	'n=0x21])';
	end;
	Select(Null,Null,Null);
end
80
How can I add some additional icons on the background

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := EXCONTEXTMENULib_TLB.exGroupPopup;
			with Items do
			begin
				Add('Item 1',Null,Null);
				Add('Item 2',Null,Null);
				Add('Item 3',Null,Null);
			end;
		end;
		BackColor := $ffffff;
		Padding := '0,0,0,16';
		BackgroundExt := 'root[text=`<img>2</img><font ;6><fgcolor 808080><off -2> clipboard </off></font></fgcolor><img>2</img>`,align=0x21]';
	end;
	Select(Null,Null,Null);
end
79
How can I add some additional text on the background

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := EXCONTEXTMENULib_TLB.exGroupPopup;
			with Items do
			begin
				Add('Item 1',Null,Null);
				Add('Item 2',Null,Null);
				Add('Item 3',Null,Null);
			end;
		end;
		BackColor := $ffffff;
		Padding := '0,0,0,8';
		BackgroundExt := 'root[text=`<font ;6><fgcolor 808080>clipboard`,align=0x21]';
	end;
	Select(Null,Null,Null);
end
78
How can I assign a tooltip to an item (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'ToolTip[id=10][ttp=This is a bit of text that should be shown when cursor hovers the item]';
	Select(Null,Null,Null);
end
77
How can I assign a tooltip to an item (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.Add('ToolTip',Null,Null).Tooltip := 'This is a bit of text that should be shown when cursor hovers the item';
	Select(Null,Null,Null);
end
76
How can I assign a spin field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Spin',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSpin;
			EditWidth := 16;
			EditValue := OleVariant(15);
			EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
			EditOption[EXCONTEXTMENULib_TLB.exEditMaxValue] := OleVariant(1000);
		end;
		with Add('Edit-Spin',Null,Null) do
		begin
			AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditSpin) Or Integer(EXCONTEXTMENULib_TLB.exItemEditText);
			EditWidth := -128;
			EditValue := OleVariant(15);
			EditOption[EXCONTEXTMENULib_TLB.exEditMaxValue] := OleVariant(1000);
		end;
		with Add('Splider-Spin',Null,Null) do
		begin
			AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditSpin) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
			EditWidth := -128;
			EditValue := OleVariant(25);
			EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
		end;
	end;
	Select(Null,Null,Null);
end
75
How can I assign a spin field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Spin[id=10][edittype=0x0200][edit=15][border=0][max=1000][editwidth=16],Edit-Spin[id=20][edittype=0x0201][edit=15][max=1000][edi' + 
	'twidth=-128],Splider-Spin[id=30][edittype=0x0203][edit=25][border=0][editwidth=-128]';
	Select(Null,Null,Null);
end
74
How can I add a vertical slider (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Vertical[id=10][edittype=0x0403][edit=25][border=0][height=128]';
	Select(Null,Null,Null);
end
73
How can I add a vertical slider (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Vertical',Null,Null) do
		begin
			ItemHeight := 128;
			AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditVertical) Or Integer(EXCONTEXTMENULib_TLB.exItemEditSlider);
			EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
			EditWidth := 32;
			EditValue := OleVariant(25);
		end;
	end;
	Select(Null,Null,Null);
end
72
How can I disable an editor (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Disabled[id=10][dis][edittype=0x01][edit=text-box][editwidth=-128]';
	Select(Null,Null,Null);
end
71
How can I disable an editor (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Disabled',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditText;
			EditWidth := -128;
			EditValue := 'text-box';
			Enabled := False;
		end;
	end;
	Select(Null,Null,Null);
end
70
How can I lock an editor (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Locked[id=10][edittype=0x0101][edit=disabled text-box][editwidth=-128]';
	Select(Null,Null,Null);
end
69
How can I lock an editor (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Locked',Null,Null) do
		begin
			AllowEdit := Integer(EXCONTEXTMENULib_TLB.exItemEditReadOnly) Or Integer(EXCONTEXTMENULib_TLB.exItemEditText);
			EditWidth := -128;
			EditValue := 'disabled text-box';
		end;
	end;
	Select(Null,Null,Null);
end
68
How can I assign a font field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Font',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditFont;
			EditWidth := -128;
			EditValue := 'Tahoma';
		end;
	end;
	Select(Null,Null,Null);
end
67
How can I assign a font field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Font[id=10][edittype=0x07][edit=Tahoma][editwidth=-128]';
	Select(Null,Null,Null);
end
66
How can I assign a color field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Color',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditColor;
			EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
			EditWidth := -128;
			EditValue := OleVariant(255);
		end;
	end;
	Select(Null,Null,Null);
end
65
How can I assign a color field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Color[id=10][edittype=0x06][edit=#FF0000][border=0][editwidth=-128]';
	Select(Null,Null,Null);
end
64
How can I assign a scrollbar field to the item (method 2)
// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('ScrollBar',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditScrollBar;
			EditWidth := -128;
			EditValue := '25';
		end;
	end;
	Select(Null,Null,Null);
end
63
How can I assign a scrollbar field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'ScrollBar[id=10][edittype=0x05][edit=25][editwidth=-128]';
	Select(Null,Null,Null);
end
62
Is it possible to change the tooltip beging shown when I change the slider/scroll/progress value

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Progress',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditProgress;
			EditWidth := -128;
			EditValue := OleVariant(25);
			EditOption[EXCONTEXTMENULib_TLB.exEditChangeToolTip] := '`Current value is: ` + value';
		end;
	end;
	Select(Null,Null,Null);
end
61
How can I hide the tooltip beging shown when I change the slider/scroll/progress value
// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Progress',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditProgress;
			EditWidth := -128;
			EditValue := OleVariant(25);
			EditOption[EXCONTEXTMENULib_TLB.exEditChangeToolTip] := '';
		end;
	end;
	Select(Null,Null,Null);
end
60
How can I assign a progress field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Progress',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditProgress;
			EditWidth := -128;
			EditValue := OleVariant(25);
		end;
	end;
	Select(Null,Null,Null);
end
59
How can I assign a progress field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Progress[id=10][edittype=0x04][edit=25][editwidth=-128]';
	Select(Null,Null,Null);
end
58
How can I assign a slider field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Slider',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
			EditWidth := -128;
			EditValue := OleVariant(25);
		end;
		with Add('Slider',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditSlider;
			EditBorder := EXCONTEXTMENULib_TLB.exEditBorderNone;
			EditWidth := -128;
			EditOption[EXCONTEXTMENULib_TLB.exEditMinValue] := OleVariant(50);
			EditOption[EXCONTEXTMENULib_TLB.exEditMaxValue] := OleVariant(450);
			EditOption[EXCONTEXTMENULib_TLB.exEditTickStyle] := OleVariant(2);
			EditOption[EXCONTEXTMENULib_TLB.exEditTickFrequency] := OleVariant(50);
			EditOption[EXCONTEXTMENULib_TLB.exEditTickLabel] := 'value = vmin ? ''<br><font ;6><b>''+value : ( value = vmax ? ''<br><font ;6><b>''+value : ( value = 200 ? ''<br><font ;6><b><fgcolor ' + 
	'FF0000>''+value : '''' ) )';
			EditValue := OleVariant(345);
		end;
	end;
	Select(Null,Null,Null);
end
57
How can I assign a slider field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Slider[id=10][edittype=0x03][edit=25][editwidth=-128],Slider[id=20][edittype=0x03][edit=345][border=0][min=50][max=450][tick=2][' + 
	'freq=50][ticklabel=value = vmin ? ''<br><font ;6><b>''+value : ( value = vmax ? ''<br><font ;6><b>''+value : ( value = 200 ? ''<br><f' + 
	'ont ;6><b><fgcolor FF0000>''+value : '''' ) )][editwidth=-128]';
	Select(Null,Null,Null);
end
56
How can I assign a mask (time) field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Time',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := '99:00:00;;0;overtype,warning=Invalid character';
			EditValue := '123456';
		end;
	end;
	Select(Null,Null,Null);
end
55
How can I assign a mask (time) field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Time[id=10][edittype=0x02][edit=12:34:56][mask=99:00:00;;0;overtype,warning=Invalid character][editwidth=-128]';
	Select(Null,Null,Null);
end
54
How can I assign a mask (license key) field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('License Key',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := 'AAAA-AAAA-AAAA-AAAA';
			EditValue := '1234';
		end;
	end;
	Select(Null,Null,Null);
end
53
How can I assign a mask (license key) field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'License Key[id=10][edittype=0x02][edit=1234-____-____-____][mask=AAAA-AAAA-AAAA-AAAA][editwidth=-128]';
	Select(Null,Null,Null);
end
52
How can I assign a mask (IP address) field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('IP Address',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := '{0,255}.{0,255}.{0,255}.{0,255}';
			EditValue := '1.2.3.4';
		end;
	end;
	Select(Null,Null,Null);
end
51
How can I assign a mask (IP address) field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'IP Address[id=10][edittype=0x02][edit=1.2.3.4][mask={0,255}.{0,255}.{0,255}.{0,255}][editwidth=-128]';
	Select(Null,Null,Null);
end
50
How can I assign a mask (phone) field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Phone',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := '!(9999) 000 000;;;empty,select=4,overtype,beep';
			EditValue := '0771638317';
		end;
	end;
	Select(Null,Null,Null);
end
49
How can I assign a mask (phone) field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Phone[id=10][edittype=0x02][edit=(0771) 638 317][mask=!(9999) 000 000;;;empty,select=4,overtype,beep][editwidth=-128]';
	Select(Null,Null,Null);
end
48
How can I assign a mask (date) field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := '`Date: `{1,12}/{1,31}/{1950,2050};;;select=1';
			EditValue := '2/15/2015';
		end;
		with Add('Date',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := '!00/00/0000;;0;empty,validateas=1,invalid=Invalid date!,warning=Invalid character!,select=4,overtype';
			EditValue := '2/15/2015';
		end;
	end;
	Select(Null,Null,Null);
end
47
How can I assign a mask (date) field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := '[id=10][edittype=0x02][edit=Date: 2/15/2015][mask=`Date: `{1,12}/{1,31}/{1950,2050};;;select=1][editwidth=-128],Date[id=20][edit' + 
	'type=0x02][edit=02/15/2015][mask=!00/00/0000;;0;empty,validateas=1,invalid=Invalid date!,warning=Invalid character!,select=4,ove' + 
	'rtype][editwidth=-128]';
	Select(Null,Null,Null);
end
46
How can I assign a mask (integer) field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Integer',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := ';;;float,grouping=,digits=0';
			EditValue := OleVariant(1000);
		end;
		with Add('Integer-Grouping',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := ';;;float,decimal=,digits=0,select=1';
			EditValue := OleVariant(1000);
		end;
		with Add('Integer-In-Range',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := '{0,2050}';
			EditValue := OleVariant(1000);
		end;
	end;
	Select(Null,Null,Null);
end
45
How can I assign a mask (integer) field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Integer[id=10][edittype=0x02][edit=1000][mask=;;;float,grouping=,digits=0][editwidth=-128],Integer-Grouping[id=20][edittype=0x02' + 
	'][edit=1,000][mask=;;;float,decimal=,digits=0,select=1][editwidth=-128],Integer-In-Range[id=30][edittype=0x02][edit=1000][mask={' + 
	'0,2050}][editwidth=-128]';
	Select(Null,Null,Null);
end
44
How can I assign a mask field to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Mask',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditMask;
			EditWidth := -128;
			EditMask := ';;;float,select=1';
			EditValue := OleVariant(1000);
		end;
	end;
	Select(Null,Null,Null);
end
43
How can I assign a mask field to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Text-Box[id=10][edittype=0x02][edit=1,000][mask=;;;float,select=1][editwidth=-128]';
	Select(Null,Null,Null);
end
42
How can I assign an edit / text-box to the item (method 2)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Mask',Null,Null) do
		begin
			AllowEdit := EXCONTEXTMENULib_TLB.exItemEditText;
			EditValue := 'this is a text';
			EditWidth := -128;
		end;
	end;
	Select(Null,Null,Null);
end
41
How can I assign an edit / text-box to the item (method 1)

// EditChange event - Occurs when the user alters the item's text box field.
procedure TForm1.ExContextMenu1EditChange(ASender: TObject; Itm : IItem);
begin
	with ExContextMenu1 do
	begin
		OutputDebugString( Itm );
	end
end;

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := 'Text-Box[edit=this is a text][editwidth=-128]';
	Select(Null,Null,Null);
end
40
How can I display a tab into the context menu (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Background[EXCONTEXTMENULib_TLB.exMenuSelBorderColor] := $f0f0f0;
	with Items do
	begin
		ToString := '[id=0][group=0x0103][itemspad=4,4,4,4]([id=-10][group=0x03](),[id=0][bg=RGB(240,240,240)][group=0x03][itemspad=4,4,4,4]([id=-100' + 
	']))';
		with item[OleVariant(-10)].Items do
		begin
			Add('',OleVariant(0),OleVariant(0)).Padding := '8,0,0,0';
			with Add('New Page',Null,Null) do
			begin
				ToString := '[typ=2][chk=1][spchk=-1][show=1][grp=10][bghot=RGB(255,255,255)][bgsel=RGB(240,240,240)][bgselhot=RGB(240,240,240)][height=16][g' + 
	'roup=0x03][tab=-100][pad=2,0,2,0]([id=50][group=0x03]([]))';
				Caption := 'Page<off -5><font ;5><b>1</b></font></off>';
				with Items do
				begin
					Add('add here fields for page 1',Null,Null).Enabled := False;
				end;
			end;
			with Add('New Page',Null,Null) do
			begin
				ToString := '[typ=2][chk=0][spchk=-1][show=1][grp=10][bghot=RGB(255,255,255)][bgsel=RGB(240,240,240)][bgselhot=RGB(240,240,240)][height=16][g' + 
	'roup=0x03][tab=-100][pad=2,0,2,0]([id=50][group=0x03]([]))';
				Caption := 'Page<off -5><font ;5><b>2</b></font></off>';
				with Items do
				begin
					Add('add here fields for page 2',Null,Null).Enabled := False;
				end;
			end;
			Add('',OleVariant(0),OleVariant(0)).Padding := '8,0,0,0';
		end;
	end;
	Select(Null,Null,Null);
end
39
How can I add check-buttons to items, without showing the check-box (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('Check 1',Null,Null) do
				begin
					Check := True;
					Checked := True;
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
				end;
				with Add('Check 2',Null,Null) do
				begin
					Check := True;
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
				end;
				with Add('Check 3',Null,Null) do
				begin
					Check := True;
					Checked := True;
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
38
How can I add check-buttons to items, without showing the check-box (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := '[group=0x3](Check 1[chk=1][show=1],Check 2[chk=0][show=1],Check 3[chk=1][show=1])';
	Select(Null,Null,Null);
end
37
How can I add radio buttons to items, without showing the radio-buttons (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('Radio 1',Null,OleVariant(1000)) do
				begin
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
					Radio := True;
					RadioGroup := 100;
				end;
				with Add('Radio 2',Null,OleVariant(1001)) do
				begin
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
					Radio := True;
					RadioGroup := 100;
				end;
				with Add('Radio 2',Null,OleVariant(1003)) do
				begin
					ShowCheckedAsSelected := EXCONTEXTMENULib_TLB.exDisplayItemHighlight;
					Radio := True;
					RadioGroup := 100;
				end;
				item[OleVariant(1000)].Checked := True;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
36
How can I add radio buttons to items, without showing the radio-buttons (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := '[group=0x3](Radio 1[rad=1][show=1][grp=100][id=1000],Radio 2[rad=0][show=1][grp=100][id=1001],Radio 2[rad=0][show=1][grp=100][id' + 
	'=1002])';
	Select(Null,Null,Null);
end
35
How can I add check-buttons to items (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('Check 1',Null,Null) do
				begin
					Check := True;
					Checked := True;
				end;
				Add('Check 2',Null,Null).Check := True;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
34
How can I add check-buttons to items (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := '[group=0x3](Check 1[chk=1],Check 2[chk=0])';
	Select(Null,Null,Null);
end
33
How can I add radio buttons to items (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := EXCONTEXTMENULib_TLB.exGroupPopup;
			with Items do
			begin
				with Add('Radio 1',Null,OleVariant(1000)) do
				begin
					Radio := True;
					RadioGroup := 100;
				end;
				with Add('Radio 2',Null,OleVariant(1001)) do
				begin
					Radio := True;
					RadioGroup := 100;
				end;
				with Add('Radio 2',Null,OleVariant(1003)) do
				begin
					Radio := True;
					RadioGroup := 100;
				end;
				item[OleVariant(1000)].Checked := True;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
32
How can I add radio buttons to items (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	ToString := '[group=0x1](Radio 1[rad=1][grp=100][id=1000],Radio 2[rad=0][grp=100][id=1001],Radio 2[rad=0][grp=100][id=1002])';
	Select(Null,Null,Null);
end
31
How can I change the selection/highlighting color

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	SelBackColor := RGB(0,0,0);
	Background[EXCONTEXTMENULib_TLB.exMenuSelBorderColor] := $80;
	Background[EXCONTEXTMENULib_TLB.exMenuHotForeColor] := $ffffff;
	ToString := '[group=3](Item 1[chk],Item 2[chk])';
	Select(Null,Null,Null);
end
30
How can I prevent showing/hide the border on the selected/highlighted item

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Background[EXCONTEXTMENULib_TLB.exMenuSelBorderColor] := SelBackColor;
	ToString := 'Item 1,Item 2';
	Select(Null,Null,Null);
end
29
How can I display a tab into the context menu (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Background[EXCONTEXTMENULib_TLB.exMenuSelBorderColor] := $f0f0f0;
	ToString := '[id=10][group=0x0103][itemspad=4,4,4,4]([id=20][group=0x03]([id=30][pad=8,0,0,0],Page<off -5><font ;5><b>1</b></font></off>[id=4' + 
	'0][typ=2][chk=1][spchk=-1][show=1][grp=10][bghot=RGB(255,255,255)][bgsel=RGB(240,240,240)][bgselhot=RGB(240,240,240)][height=16]' + 
	'[group=0x03][tab=9000][pad=2,0,2,0]([id=50][group=0x03](add here fields for page 1[dis])),Page<off -5><font ;5><b>2</b></font></' + 
	'off>[id=120][typ=2][spchk=-1][show=1][grp=10][bghot=RGB(255,255,255)][bgsel=RGB(240,240,240)][bgselhot=RGB(240,240,240)][height=' + 
	'16][group=0x03][tab=9000][pad=2,0,2,0]([id=130][group=0x03](add here fields for page 2[dis])),[id=180][pad=8,0,0,0]),[id=190][bg' + 
	'=RGB(240,240,240)][group=0x03][itemspad=4,4,4,4]([id=9000]))';
	Select(Null,Null,Null);
end
28
How do I prevent highlighting the item (method 2.b)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('No highlight',Null,Null).Enabled := False;
		Add('Item 2',Null,Null);
		Add('Item 3',Null,Null);
	end;
	Select(Null,Null,Null);
end
27
How do I prevent highlighting the item (method 2.a)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('No highlight',OleVariant(2),Null) do
		begin
			Items.Add('',Null,Null);
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
		end;
		Add('Item 2',Null,Null);
		Add('Item 3',Null,Null);
	end;
	Select(Null,Null,Null);
end
26
How do I prevent highlighting the item (method 1.b)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := 'No highlight[dis],Item 2,Item 3';
	Select(Null,Null,Null);
end
25
How do I prevent highlighting the item (method 1.a)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := 'No highlight[group=0x3][arrow=0]([]),Item 2,Item 3';
	Select(Null,Null,Null);
end
24
How can I can I assign pictures or images for the item (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	HTMLPicture['pic1'] := 'c:\exontrol\images\zipdisk.gif';
	HTMLPicture['pic2'] := 'c:\exontrol\images\auction.gif';
	with Items do
	begin
		Add('Item',Null,Null).HTMLImage := 'pic1';
		Add('Item',Null,Null).HTMLImage := 'pic2';
		Add('',OleVariant(1),Null);
		Add('Item <img>pic1</img>',Null,Null);
		Add('Item <img>pic2</img>',Null,Null);
		Add('',OleVariant(1),Null);
		Add('<img>pic1</img> Item <img>pic2</img>',Null,Null);
	end;
	Select(Null,Null,Null);
end
23
How can I can I assign pictures or images for the item (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	HTMLPicture['pic1'] := 'c:\exontrol\images\zipdisk.gif';
	HTMLPicture['pic2'] := 'c:\exontrol\images\auction.gif';
	ToString := 'Item[himg=pic1],Item[himg=pic2],[sep],Item <img>pic1</img>,Item <img>pic2</img>,[sep],<img>pic1</img> Item <img>pic2</img>';
	Select(Null,Null,Null);
end
22
How can I can I assign icons for the item (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	with Items do
	begin
		Add('Item',Null,Null).Image := 1;
		Add('Item',Null,Null).Image := 2;
		Add('',OleVariant(1),Null);
		Add('Item <img>1</img>',Null,Null);
		Add('Item <img>2</img>',Null,Null);
		Add('',OleVariant(1),Null);
		Add('Item <img>1</img>',Null,Null).Image := 1;
	end;
	Select(Null,Null,Null);
end
21
How can I can I assign icons for the item (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 
	'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 
	'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	Items.ToString := 'Item[img=1],Item[img=2],[sep],Item <img>1</img>,Item <img>2</img>,[sep],Item <img>1</img>[img=1]';
	Select(Null,Null,Null);
end
20
How can I change the visual appearance / background color (EBN) for a collection of items/group (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
	with Items do
	begin
		Padding := '2,2,2,2';
		BackColor := $1000000;
		Add('Item 1',Null,Null);
		Add('Item 2',Null,Null);
		Add('Item 3',Null,Null);
	end;
	Select(Null,Null,Null);
end
19
How can I change the visual appearance / background color (EBN) for a collection of items/group (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
	Items.ToString := '[itemsbg=0x1000000][itemspad=2,2,2,2][group=0x103](Item 1,Item 2,Item 3)';
	Select(Null,Null,Null);
end
18
How can I change the background color for a collection of items/group (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Padding := '2,2,2,2';
		BackColor := $ff;
		Add('Item 1',Null,Null);
		Add('Item 2',Null,Null);
		Add('Item 3',Null,Null);
	end;
	Select(Null,Null,Null);
end
17
How can I change the background color for a collection of items/group (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := '[itemsbg=RGB(255,0,0)][itemspad=2,2,2,2][group=0x103](Item 1,Item 2,Item 3)';
	Select(Null,Null,Null);
end
16
How can I change the visual appearance / background color (EBN) for a specified item (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
	with Items do
	begin
		Add('Item 1',Null,Null);
		Add('Item 2',Null,Null).BackColor := $1000000;
		Add('Item 3',Null,Null);
	end;
	Select(Null,Null,Null);
end
15
How can I change the visual appearance / background color (EBN) for a specified item (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
	Items.ToString := 'Item 1,Item 2[bg=0x1000000],Item 3';
	Select(Null,Null,Null);
end
14
How can I change the background color for a specified item (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item 1',Null,Null);
		Add('Item 2',Null,Null).BackColor := $ff;
		Add('Item 3',Null,Null);
	end;
	Select(Null,Null,Null);
end
13
How can I change the background color for a specified item (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := 'Item 1,Item 2[bg=RGB(255,0,0)],Item 3';
	Select(Null,Null,Null);
end
12
How do I add a popup or a sub-menu so it show when cursor hovers it (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('Popup',OleVariant(2),Null).Items do
		begin
			Add('Item 1',Null,Null);
			Add('Item 2',Null,Null);
			Add('Item 3',Null,Null);
		end;
	end;
	Select(Null,Null,Null);
end
11
How do I add a popup or a sub-menu so it show when cursor hovers it (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := 'Popup(Item 1,Item 2,Item 3)';
	Select(Null,Null,Null);
end
10
How can I arrange the items by grouping (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
			with Items do
			begin
				with Add('Horizontal',OleVariant(2),Null) do
				begin
					GroupPopup := EXCONTEXTMENULib_TLB.exGroupPopup;
					with Items do
					begin
						Add('Sub-Item <b>A</b>',Null,Null);
						Add('Sub-Item <b>B</b>',Null,Null);
						Add('Sub-Item <b>C</b>',Null,Null);
					end;
				end;
				Add('',Null,Null).CaptionWidth := 16;
				with Add('Vertical',OleVariant(2),Null) do
				begin
					Alignment := EXCONTEXTMENULib_TLB.exCenter;
					GroupPopup := Integer(EXCONTEXTMENULib_TLB.exGroupPopupVertical) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
					with Items do
					begin
						Add('Sub-Item <b>A</b>',Null,Null);
						Add('Sub-Item <b>B</b>',Null,Null);
						Add('Sub-Item <b>C</b>',Null,Null);
					end;
				end;
				Add('',Null,Null).CaptionWidth := 16;
				with Add('Popup',OleVariant(2),Null) do
				begin
					with Items do
					begin
						Add('Sub-Item <b>A</b>',Null,Null);
						Add('Sub-Item <b>B</b>',Null,Null);
						Add('Sub-Item <b>C</b>',Null,Null);
					end;
				end;
			end;
		end;
	end;
	Select(Null,Null,Null);
end
9
How can I arrange the items by grouping (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := '[group=0x03](Horizontal[group=0x01](Sub-Item <b>A</b>,Sub-Item <b>B</b>,Sub-Item <b>C</b>),[captionwidth=16],Vertical[group=0x01' + 
	'01][align=1](Sub-Item <b>A</b>,Sub-Item <b>B</b>,Sub-Item <b>C</b>),[captionwidth=16],Popup(Sub-Item <b>A</b>,Sub-Item <b>B</b>,' + 
	'Sub-Item <b>C</b>),[captionwidth=160])';
	Select(Null,Null,Null);
end
8
How can I arrange some items vertically, and some horizontally (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			with Items do
			begin
				Add('1',Null,Null);
				Add('2',Null,Null);
				Add('3',Null,Null);
			end;
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
		end;
		with Add('',OleVariant(2),Null) do
		begin
			with Items do
			begin
				Add('4',Null,Null);
				Add('5',Null,Null);
				Add('6',Null,Null);
			end;
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
		end;
		with Add('',OleVariant(2),Null) do
		begin
			with Items do
			begin
				Add('7',Null,Null);
				Add('8',Null,Null);
				Add('9',Null,Null);
			end;
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
		end;
	end;
	Select(Null,Null,Null);
end
7
How can I arrange some items vertically, and some horizontally (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := '[group=3](1,2,3),[group=3](4,5,6),[group=3](7,8,9)';
	Select(Null,Null,Null);
end
6
How can I assign multiple-lines to an item (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			with Items do
			begin
				Add('Item 1',Null,Null).Caption := 'Item <br><c><b>1';
				Add('Item 2',Null,Null).Caption := 'Item <br><c><b>2';
				Add('Item 3',Null,Null).Caption := 'Item <br><c><b>3';
			end;
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
		end;
	end;
	Select(Null,Null,Null);
end
5
How can I assign multiple-lines to an item (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := '[group=3](Item <br><c><b>1,Item <br><c><b>2,Item <br><c><b>3)';
	Select(Null,Null,Null);
end
4
How can I add new items arranged horizontally to the context menu (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		with Add('',OleVariant(2),Null) do
		begin
			with Items do
			begin
				Add('Item 1',Null,Null);
				Add('Item 2',Null,Null);
				Add('Item 3',Null,Null);
			end;
			GroupPopup := Integer(EXCONTEXTMENULib_TLB.exNoGroupPopupFrame) Or Integer(EXCONTEXTMENULib_TLB.exGroupPopup);
		end;
	end;
	Select(Null,Null,Null);
end
3
How can I add new items arranged horizontally to the context menu (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := '[group=3](Item 1,Item 2,Item 3)';
	Select(Null,Null,Null);
end
2
How can I add new items to the context menu (method 2)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	with Items do
	begin
		Add('Item 1',Null,Null);
		Add('Item 2',Null,Null);
		Add('Item 3',Null,Null);
	end;
	Select(Null,Null,Null);
end
1
How can I add new items to the context menu (method 1)

ExContextMenu1 := (IUnknown(ComObj.CreateComObject(ComObj.ProgIDToClassID('Exontrol.ContextMenu.1'))) as EXCONTEXTMENULib_TLB.ExContextMenu);
with ExContextMenu1 do
begin
	Items.ToString := 'Item 1,Item 2,Item 3';
	Select(Null,Null,Null);
end